######################################################
# SUNNY project, Anyang Normal University, IMP-CAS
#
# CMakeLists.txt for user-composed programs
# Author: SUN Yazhou, asia.rabbit@163.com
# Created: 2020/08/30
# Last modified: 2022/05/23, SUN Yazhou
######################################################

include_directories(${PROJECT_SOURCE_DIR}/fci/inc) # SUNNY header path
include_directories(${PROJECT_SOURCE_DIR}/cnok/inc)
link_libraries(momd sunny)

if(DEFINED _ROOT_)
  include_directories(${ROOT_INCLUDE_DIRS}) # ROOT header path
  link_libraries(${ROOT_LIBRARIES})
endif()

if(CATCH_CNOK)
  add_executable(te test.cxx) # unit test
  add_executable(tf testfci.cxx) # unit test
  target_link_libraries(tf momd) # to solve momd-dependencies of tf
endif()

add_executable(mb mbsd.cxx) # many-body basis generation
add_executable(ham ham.cxx) # hamiltonian matrix establishment
# calcualte c.s. for one configuration - for benchmark test, DO NOT EDIT
add_executable(mom momd.cxx)
# add_executable(m mom.cxx) # calcualte c.s. for one configuration
# add_executable(rs rs.cxx) # calculate c.s. for all configurations of a projectile
# add_executable(rs rsCp.cxx) # calculate c.s. and Rs for C12-16 -p
add_executable(rs rsCp1.cxx) # calculate c.s. and Rs for C12-16 -p, with various SM input
# add_executable(rs0 rs0.cxx) # calculate c.s. for all configurations of a projectile
# add_executable(rs1 rs1.cxx) # calculate rs for C14
# add_executable(rsmom rsCpMom.cxx) # calculate momdis for all configurations of C15-16 -p
# add_executable(rsmom rsMom.cxx) # calculate momdis for all configurations of C15-16 -n
if(_ROOT_)
  add_executable(at atest.cxx) # a simple general test
endif()
